using System;
using System.Collections.Generic; 
using System.Collections;
using System.Linq;
using System.Diagnostics;
using System.Xml;
using System.Xml.Schema; 
using System.Xml.Linq; 
using System.Xml.XPath;
using Metaspec;
using AbstraX.ParserInterfaces;

namespace CsParser
{
	/// ID=/AssembliesRoot[@URL='AbstraX://MCLaptop64/AssembliesRoot']/Assembly[@AssemblyFile='C:\Users\Ken\Documents\Mind Chemistry\SolutionFramework\Binaries\CsTransformationParserLibrary.dll']/AssemblyType[@Type='Metaspec.CsCompilationUnit']/FieldElement[@Property='extern_alias_directives']/AssemblyType[@Type='Metaspec.CsExternAliasDirective']
	/// Name=CsExternAliasDirective
	/// 
	/// ****************** DataType ******************
	/// 
	/// Type='CsExternAliasDirective'
	/// FQN='Metaspec.CsExternAliasDirective'
	/// IsCollectionType='False'
	/// 
	/// 
	/// ****************** Description ******************
	/// 
	/// Field Type
	/// 
	/// 
	/// ****************** Modifiers ******************
	/// 
	/// CanRead=false
	/// CanWrite=false
	/// IsLocal=false
	/// NotNavigable=false
	/// NotApplicable=false
	/// 
	/// **********************************************
 	public class CodeExternAliasDirective : CodeNode, ICodeExternAliasDirective
	{
		private CsExternAliasDirective csExternAliasDirective;

        public CodeExternAliasDirective(CsExternAliasDirective csExternAliasDirective) : base(csExternAliasDirective)
        {
            this.csExternAliasDirective = csExternAliasDirective;
        }

		/// ------------------------------------ PropertyBinding ------------------------------------
		/// 
		/// Name: extern_token
		/// BindingMode: TwoWay
		/// BindingSourceType: AbstraXBindingSource
		/// IsSearchable: false
		/// 
		/// ****************** BindingAttribute ******************
		/// 
		/// ID=/AssembliesRoot[@URL='AbstraX://MCLaptop64/AssembliesRoot']/Assembly[@AssemblyFile='C:\Users\Ken\Documents\Mind Chemistry\SolutionFramework\Binaries\CsTransformationParserLibrary.dll']/AssemblyType[@Type='Metaspec.CsCompilationUnit']/FieldElement[@Property='extern_alias_directives']/AssemblyType[@Type='Metaspec.CsExternAliasDirective']/FieldAttribute[@Field='extern_token']
		/// Name=extern_token
		/// 
		/// ****************** DataType ******************
		/// 
		/// Type='Int32'
		/// TypeCode='Empty'
		/// 
		/// 
		/// ****************** Modifiers ******************
		/// 
		/// CanRead=true
		/// CanWrite=true
		/// IsLocal=true
		/// NotNavigable=false
		/// NotApplicable=false
		/// 
		/// **********************************************
		/// 
		/// *****************************************************
		/// 
		/// 
		/// ----------------------------------------------------------------------------------
        public Int32 Extern_token 
        { 
            get
            {
				return csExternAliasDirective.extern_token;
            }
            set
            {
				csExternAliasDirective.extern_token = value;
            }
        }

		/// ------------------------------------ PropertyBinding ------------------------------------
		/// 
		/// Name: alias_token
		/// BindingMode: TwoWay
		/// BindingSourceType: AbstraXBindingSource
		/// IsSearchable: false
		/// 
		/// ****************** BindingAttribute ******************
		/// 
		/// ID=/AssembliesRoot[@URL='AbstraX://MCLaptop64/AssembliesRoot']/Assembly[@AssemblyFile='C:\Users\Ken\Documents\Mind Chemistry\SolutionFramework\Binaries\CsTransformationParserLibrary.dll']/AssemblyType[@Type='Metaspec.CsCompilationUnit']/FieldElement[@Property='extern_alias_directives']/AssemblyType[@Type='Metaspec.CsExternAliasDirective']/FieldAttribute[@Field='alias_token']
		/// Name=alias_token
		/// 
		/// ****************** DataType ******************
		/// 
		/// Type='Int32'
		/// TypeCode='Empty'
		/// 
		/// 
		/// ****************** Modifiers ******************
		/// 
		/// CanRead=true
		/// CanWrite=true
		/// IsLocal=true
		/// NotNavigable=false
		/// NotApplicable=false
		/// 
		/// **********************************************
		/// 
		/// *****************************************************
		/// 
		/// 
		/// ----------------------------------------------------------------------------------
        public Int32 Alias_token 
        { 
            get
            {
				return csExternAliasDirective.alias_token;
            }
            set
            {
				csExternAliasDirective.alias_token = value;
            }
        }

		/// ------------------------------------ PropertyBinding ------------------------------------
		/// 
		/// Name: semicolon_token
		/// BindingMode: TwoWay
		/// BindingSourceType: AbstraXBindingSource
		/// IsSearchable: false
		/// 
		/// ****************** BindingAttribute ******************
		/// 
		/// ID=/AssembliesRoot[@URL='AbstraX://MCLaptop64/AssembliesRoot']/Assembly[@AssemblyFile='C:\Users\Ken\Documents\Mind Chemistry\SolutionFramework\Binaries\CsTransformationParserLibrary.dll']/AssemblyType[@Type='Metaspec.CsCompilationUnit']/FieldElement[@Property='extern_alias_directives']/AssemblyType[@Type='Metaspec.CsExternAliasDirective']/FieldAttribute[@Field='semicolon_token']
		/// Name=semicolon_token
		/// 
		/// ****************** DataType ******************
		/// 
		/// Type='Int32'
		/// TypeCode='Empty'
		/// 
		/// 
		/// ****************** Modifiers ******************
		/// 
		/// CanRead=true
		/// CanWrite=true
		/// IsLocal=true
		/// NotNavigable=false
		/// NotApplicable=false
		/// 
		/// **********************************************
		/// 
		/// *****************************************************
		/// 
		/// 
		/// ----------------------------------------------------------------------------------
        public Int32 Semicolon_token 
        { 
            get
            {
				return csExternAliasDirective.semicolon_token;
            }
            set
            {
				csExternAliasDirective.semicolon_token = value;
            }
        }

		/// ------------------------------------ NavigationItem ------------------------------------
		/// 
		/// Property: 'identifier' returns type: 'Metaspec.CsIdentifier'
		/// CanRead: true
		/// CanWrite: true
		/// 
		/// ----------------------------------------------------------------------------------
        public CsIdentifier Identifier 
        { 
            get
            {
				return new CsIdentifier(csExternAliasDirective.identifier);
            }
        }

		/// ------------------------------------ NavigationItem ------------------------------------
		/// 
		/// Property: 'extern_alias' returns type: 'Metaspec.ExternAlias'
		/// CanRead: true
		/// CanWrite: true
		/// 
		/// ----------------------------------------------------------------------------------
        public ExternAlias Extern_alias 
        { 
            get
            {
				return new ExternAlias(csExternAliasDirective.extern_alias);
            }
        }

    }
}
